Method and system for overlaying videos in a television set using a television script

ABSTRACT

Method and system for overlaying videos in a television include: receiving a plurality of video signals directly from a plurality of video sources by the television; receiving and processing a script by the television, the script includes instructions for placing a first picture from a first video signal of the plurality of video signals in a first position at a first depth value on a display coupled to the television, and instructions for placing a second picture from a second video signal of the plurality of video signals in a second position at a second depth value on the display; and simultaneously displaying the first picture and the second picture on the display by the television in an overlayed manner, the first picture being displayed at the first position and at the first depth value, the second picture being displayed at the second position and at the second depth value.

BACKGROUND OF THE INVENTION Field

This invention relates generally to media, particularly to a system andmethod to overlay videos from multiple sources in a television set.

Related Arts

Television is often considered as a broadcast media, where the videocontent is controlled by television broadcasters. Broadcasters decide onwhat to show to consumers or viewers, and broadcasters dictate whatconsumers can see. Sometimes, when a broadcaster determines thatmultiple contents can be shown, the broadcaster combines the contentinto a single video signal and broadcasts the signal to the viewers. Aviewer cannot choose one content over another, or a differentcombination of content. Let alone different viewers may prefer differentchoices of the combinations.

In one embodiment, John is watching a NFL football game on ESPN channel.During half time, ESPN decides to show the half time show with anoverlay of a commentator summarizing the first half, and live interviewsof several coaches and football players from other NFL teams. John isinterested only in the half time show, but he cannot turn off theoverlay videos. Jack is watching the same game. Jack, however, isinterested in the interviews while watching the half time show.Unfortunately ESPN shows more videos of the summary than the interviews,even though the remaining interview video footage is available on ESPN'swebsite. Jack is not happy about that.

In one embodiment, Tina watches every morning CNBC to check thefinancial and business news. Though Tina is definitely interested in thenews, she thinks she can listen to them without watching the television.However, she is keen on the stock tickers on the screen. She wants thetickers to be more visible with larger letters and numbers. She does nothave a choice as CNBC chooses the small text size for the tickers.

In one embodiment, a broadcaster does not want its video content to beshown together with video content from another broadcaster, opposite toconsumers' desire. In one embodiment, John prefers to hear commentatorsfrom NBC Sports on the football game shown in ESPN channel. John wantsto have an overlay video picture of NBC Sports anchorman to talk aboutthe game while John watches the game telecasted by ESPN. In anotherembodiment, Tina wants to have two overlay pictures, one from CNNshowing world news, and one from a local television station going overlocal weather and news, while she watches CNBC every morning.

In another embodiment, John watches a telecast football game in a localsports bar. The sports bar wants to put advertisements on the televisionset about their beverage and food menu. The bar wants also to advertisethe weekly Friday night happy hour appetizer specials. Ideally theadvertisements are displayed as overlay animations on the television setin the sports bar, similar to many typical overlay advertisements run byESPN. The sports bar is interested only to advertise on the televisionsets in the bar, and is not willing to pay big money to purchase anadvertisement slot with ESPN, which will show the televisions tomillions of viewers who do not live near the bar or are not interestedin sports bar.

In yet another embodiment, Jack purchases his television set from alocal retail store at a discounted price. The television set connects toInternet. The retail store wants to use the television set to runpromotion videos from the store's web site. The promotion videos aremost effective when Jack watches sport games. For example, the retailstore wants to run announcement of local sport events such as littleleague baseball games, sales of skiing equipment, profiles of athleticsof a local high school. When Jack is watching a sports televisionprogram, the store wants to know the sports program and plays thecorresponding promotion videos overlaying on top of the sports programon the television set.

The above embodiments illustrate a need to provide a method and a systemto overlay a plurality of videos in a television set.

BRIEF SUMMARY OF THE INVENTION

The invention provides a method and system for overlaying videos in atelevision using a television script. In a method aspect, the inventioncomprises: receiving a plurality of video signals directly from aplurality of video sources by the television; receiving and processing afirst script by the television, the first script comprising instructionsfor placing a first picture from a first video signal of the pluralityof video signals in a first position at a first depth value on a displaycoupled to the television, and instructions for placing a second picturefrom a second video signal of the plurality of video signals in a secondposition at a second depth value on the display; and simultaneouslydisplaying the first picture and the second picture on the display bythe television in an overlayed manner, the first picture being displayedat the first position and at the first depth value, the second picturebeing displayed at the second position and at the second depth value.

In one aspect, the first picture is displayed as at least partiallycovering the second picture. In another aspect, the first picture isdisplayed as overlaying translucently on top of the second picture,wherein the second picture is at least partially visible.

In another feature, the method further comprises: receiving andprocessing a second script by the television, the second scriptcomprising further instructions for placing the first picture and thesecond picture on the display, wherein the second script comprises adifferent depth value for the first picture or the second picture; andsimultaneously displaying the first picture and the second picture onthe display by the television, wherein the overlay display of the firstand second pictures are changed according to the different depth value.

In one aspect, the first video signal comprises a description, whereinthe television performs a video search on the plurality of video signalsbased on the description, where a result of the video search comprises asecond video signal.

In an apparatus aspect, the invention comprises: a plurality ofinterfaces for receiving a plurality of video signals directly from aplurality of video sources; a first video player for processing a firstvideo signal of the plurality of video signals; a first video buffer forstoring a first picture from the processed first video signal, the firstvideo buffer being associated with a first depth value; a second videoplayer for processing a second video signal of the plurality of videosignals; a second video buffer for storing a second picture from theprocessed second video signal, the second video buffer being associatedwith a second depth value; a local storage for storing a script, thescript comprising instructions for placing the first picture at a firstposition at the first depth value and instructions for placing thesecond picture at a second position at the second depth value; and anoverlay processor for processing the first video buffer by rendering thefirst picture in the first video buffer at the first position at thefirst depth value onto a display coupled to the television, forprocessing the second video buffer by rendering the second picture inthe second video buffer at the second position at the second depthvalue, the first and second pictures being displayed simultaneously inan overlayed manner.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE FIGURES

FIG. 1 illustrates a television set with overlaying videos.

FIG. 2 illustrates a process for overlaying pictures.

FIG. 3 illustrates a television script automatically changing overlayingeffects.

FIG. 4 illustrates a process of changing the overlay by a secondtelevision script.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates a television set with overlaying videos.

Viewer 100 is watching television 110. Television set or television 110is a consumer electronic device, typically for watching broadcasttelevision, cable or satellite television, or IP television. Television110 receives a television video 131 from a video source 151.

In one embodiment, television 110 includes a High Definition Television(HDTV) set. In one embodiment, television 110 includes a digital mediaadaptor. In one embodiment, television 110 includes a Video CassetteRecorder (VCR), or a Digital Video Recorder (DVR). In one embodiment,television 110 includes a set-top-box. In one embodiment, theset-top-box includes a personal computer (PC), a notebook or a netbook.In one embodiment, television 110 includes a mobile entertainment devicesuch as a smartphone, mobile internet device (MID) or a NetTop. In oneembodiment, television 110 includes a PumpTop television. In oneembodiment, television 110 includes a digital video signage, a kiosk, ora digital billboard. In one embodiment, television 110 includes adigital video scoreboard used in sports venue. In one embodiment,television 110 includes an all-in-one TV. In one embodiment, television110 includes a touch sensitive screen.

In one embodiment, television 110 is located in a living room, a familyroom, or a bedroom. In one embodiment, television 110 is located in aresidential entertainment room. In one embodiment, television 110 isplaced on a low-profile table, or hung on a wall. In one embodiment,television 110 is located in a restaurant, a sports bar, or a shoppingmall. In one embodiment, television 110 is located in an airport, ahotel lobby, a hotel guestroom, or a casino. In one embodiment,television 110 is located over a gas pump in a gas station. In oneembodiment, television 110 is located in a retail store, in a bank, asupermarket or a department store. In one embodiment, television 110 islocated in a reception area of a dental office, a clinic, a hospital, ora governmental office. In one embodiment, television 110 is located in aball park, a stadium or a public place, such as a town-square, subwaystation, or a street corner. In one embodiment, television 110 islocated in an elevator, a billboard, or a digital kiosk. In oneembodiment, television 110 is located in a class room, a lecture hall,or a corporate conference room. In one embodiment, television 110 islocated in an airplane, a passenger car, a bus or a train.

In one embodiment, television video 131 includes a stream of video andaudio signals, such as Real Time Messaging Protocol (RTMP) signals,Moving Pictures Expert Group-1 (MPEG-2) signals, MPEG-4 signals, H.264,Windows Media Video (WMV), QuickTime video, On2 VP6-based signals,Digital Video Broadcasting Terrestrial (DVB-T), Digital VideoBroadcasting Handhelds (DVB-H), or analog signals such as NationalTelevision System Committee (NTSC), or Phase Alternating Lind (PAL)signals. In one embodiment, television video 131 includes a Media RSSdocument or a Synchronized Multimedia Integration Language (SMIL)document. In one embodiment, television video 131 is a television show.In one embodiment, television video 131 is a movie. In one embodiment,television video 131 is a news broadcast. In one embodiment, televisionvideo 131 is a televised event, such as a National Football League (NFL)game, an Olympics track and field event, or Miss Universe Pageant. Inone embodiment, television video 131 is a documentary, a web video, or acity council meeting broadcast. In one embodiment, television video 131is an advertisement. In one embodiment, television video 131 is ananimation, or a cartoon animation.

In one embodiment, video source 151 is a broadcast television network,such as a cable television network, a satellite television network, orterrestrial television network, also known as over-the-air (OTA)television network. In one embodiment, video source 151 is a broadbandtelevision network. In one embodiment, video source 151 is based onInternet Protocol Television (IPTV) technologies. In one embodiment,video source 151 is an Internet video portal or online video syndicate.In one embodiment, video source 151 is an on-line video rental service.In one embodiment, video source 151 is a web portal. In one embodiment,video source 151 is a home media center, a PC, a cable set-top box, adigital set-top box such as Sling, or Apple TV.

Television 110 includes interfaces for directly receiving video signalsfrom a plurality of video sources. Television 110 connects to videosource 151. In one embodiment, television 110 connects to video source151 over a radio frequency (RF) interface, or a composite video inputinterface. In one embodiment, television 110 connects to video source151 over a media component interface, such as an YCbCr interface. In oneembodiment, television 110 connects to video source 151 over a HighDefinition Multimedia Interface (HDMI) or Digital Video Interface (DVI).In one embodiment, television 110 connects to video source 151 over anetwork interface, such as an Ethernet interface. In one embodiment,television 110 connects to video source 151 over a wireless networkinterface such as a Wireless Local Area Network (WLAN), a WorldwideInteroperability for Microware Access (WiMax) network, an Ultra-Wideband(UWB) network, or a 3G network interface. In one embodiment, television110 connects to video source 151 over a cable modem interface or aDigital Subscriber Line (DSL) interface. In one embodiment, television110 connects to video source 151 using Bluetooth, Data Over CableService Interface Specification (DOCSIS) 3.0, or Multimedia Over CoaxAlliance (MoCA) technologies.

In one embodiment, television 110 includes a display 113. Display 113includes a picture 141. Television 110 plays television video 131 ontopicture 141. In one embodiment, display 113 includes a Cathode Ray Tube(CRT) screen, a Liquid Crystal Display (LCD) screen, or a plasma displaypanel. In one embodiment, display 113 includes a video projector or avideo monitor. In one embodiment, display 113 has a screen size of 40inches, 3.5 inches, 120 inches or 17 inches.

In one embodiment, television 110 connects to display 113. In oneembodiment, television 110 connects to display 113 using an HDMI, aDigital Video Interface (DVI), a Universal Serial Bus (USB), IEEE 1394(Firewire), a Video Graphics Array (VGA), or an S-video connector orcable. In one embodiment, television 110 connects to display 113 over aradio frequency (RF) interface. In one embodiment, television 110connects to display 113 over a media component connector or cable, suchas analog RCA or digital YCbCr connector or cable.

Television 110 processes a television script 190. Television 110includes a programming processor 119 capable of processing televisionscript 190. In one embodiment, programming processor 119 includes amicro-processor, such as Intel Pentium. Celeron, Atom, an AMDmicro-processor, or a VIA micro-processor. In one embodiment,programming processor 119 includes an embedded micro-processor based onRISC architecture such as the MIPS, PowerPC, or ARM architecture. In oneembodiment, programming processor 119 includes a multi-core processor,such as Intel's Core 2 Duo processor, or AMD's Opteron Quad-Coreprocessor. Television 110 processes television script 190 usingprogramming processor 119. Television script 190 includes one or moreprogramming instructions to place picture 141 onto a position on display113. In one embodiment, television script 190 is encoded in ExtensibleMarkup Language (XML). In one embodiment, television script 190 isencoded in EMCAScript or Javascript. In one embodiment, televisionscript 190 is encoded in Java. In one embodiment, television script 190is encoded in a web scripting language, such as Hypertext MarkupLanguage (HTML). In one embodiment, television script 190 is encoded inVisual Basic Script (VBScript). In one embodiment, television script 190is encoded in the Common Language Infrastructure (CLI). In one example,television 110 processes television script 190 to place picture 141 witha size of 640×480 pixels from a top left position of (10, 10) to abottom right position of (650, 490). In one example, television script190 places picture 141 with a size of 0.5×0.3 from a top left corner of(0.1, 0.1) to a bottom right corner of (0.6, 0.4). In one embodiment,the placement is based on pixels, inches or centimeters. In oneembodiment, television script 190 includes programming instructions tospecify television video 131 is to be played onto picture 141.Television 110 processes television video 131 and picture 141 accordingto television script 190.

Similarly, television 110 processes a second television video 133 fromvideo source 153. Television video 133 is played onto picture 143, whichis included in display 113. In one embodiment, television script 190includes programming instructions for picture 143 and television video133, similar to those for picture 141 and television video 131.

In one embodiment, television 110 processes television script 190 toplace picture 141 and picture 143 in an overlay manner. Televisionscript 190 includes programming instructions to overlay picture 141 overpicture 143 on display 113. In one embodiment, picture 141 overlays ontop of picture 143. In one embodiment, picture 141 overlays partially ontop of picture 143. In one embodiment, picture 141 overlaystranslucently on top of picture 143 where picture 143 is partiallyvisible. In one embodiment picture 141 is larger than picture 143. Inanother embodiment, picture 143 is larger than picture 141.

In one embodiment, picture 141 overlaps with picture 143 on display 113such that viewer 100 sees picture 141 and not picture 143 in the overlaparea. In one embodiment viewer 100 sees picture 141 with a translucentview of picture 143 in the overlap area. In one embodiment, the overlaparea includes the entire picture 141, entire picture 143, or part ofeither picture 141 or picture 143. In one embodiment, television 110continues playing television video 131 and television video 133 whilepicture 141 and picture 143 are displayed simultaneously in an overlaymanner on display 113. In one embodiment, picture 141 and picture 143overlap and change position over time so that during some time periodpicture 141 is visible and during other time periods picture 143 isvisible.

Television 110 obtains television script 190 over a data network 330 andstores the television script 190 in local storage 180. The local storage180 is a computer readable medium that stores the programminginstructions of the television script 190. In one embodiment, datanetwork 330 includes the Internet. In one embodiment, data network 330includes an Internet Service Provider (ISP) network. In one embodiment,data network 330 includes a Content Delivery Network (CDN). In oneembodiment, data network 330 includes a private network operated by orfor a business, such as a hotel, a multi-tenant complex, a gym, arehabilitation center, or a casino. In one embodiment, data network 330includes a home network. In one embodiment, data network 330 includes abroadband network. In one embodiment, data network 330 includes anEthernet. In one embodiment, data network 330 includes a WiFi network.In one embodiment, data network 330 includes a wireless network such asa Wireless Local Area Network (WLAN), a Worldwide Interoperability forMicroware Access (WiMax) network, or an Ultra-Wideband (UWB) network. Inone embodiment, data network 330 includes a cellular network, such as a3G network. In one embodiment, data network 330 includes a digitaltelevision network such as a cable television network, a satellitetelevision network, or an IPTV network like Verizon's FiOS or AT&T'sU-Verse. In one embodiment, data network 330 includes a digitalsubscriber line (DSL) network or cable broadband network. In oneembodiment, data network 330 includes fiber based subscriber broadbandnetwork.

In one embodiment, television 110 obtains television script 190 from atelevision service provider 174 and stored the script 190 in the localstorage 180. In one embodiment, television service provider 174 includesa television programming network, a television syndicate, or atelevision station. In one embodiment, television service provider 174includes a television programming guide network. In one embodiment,television service provider 174 includes a cable television network, ora satellite television network. In one embodiment, television serviceprovider 174 includes an advertisement agency. In one embodiment,television service provider 174 includes a web portal of a sportstelevision network. In one embodiment, television service provider 174includes a CDN.

FIG. 2 illustrates a process for overlaying pictures.

Television 110 includes a video player 201, and a video buffer 211. Inone embodiment, television script 190 includes programming instructionsfor video player 201. Television script 190 instructs video player 210to process television video 131. Video player 201 processes televisionvideo 131. Video player 201 receives a stream of video signals 231 oftelevision video 131, processes the video signals 231 and places thepicture output into video buffer 211.

In one embodiment, video player 201 includes a software media playersuch as Adobe Flash Player, Adobe Media Player, Microsoft Silverlight,or Windows Media Player. In one embodiment, video player 201 includes astandalone or embedded software application capable of playing backvideo signals 231. In one embodiment, video player 201 includes aspecial purpose DSP (digital signal processor) or microcontroller suchas a Broadcom media processor, TI media processor or a Sigma Designsmedia processor. In one embodiment, video player 201 includes a generalpurpose central processing unit (CPU), such as Intel Pentium or Atomprocessor. In one embodiment, video player 201 includes integratedcircuits (ICs) such as ARM9 or ARM11 cores. In one embodiment, videoplayer 201 includes a video capable graphics processor. In one example,the graphics processor is an integrated graphics processor such as theIntel graphics processor, AMD graphics processor or NVIDIA graphicsprocessor. In one example, the graphics processor is included in anotherprocessor.

In one embodiment, video buffer 211 includes system memory such as DRAM.In one embodiment, video buffer 211 includes video memory addressable bya graphics processor. In one embodiment, pictures 141 and 143 are storedin separate areas in video buffer 211.

Television 110 associates video buffer 211 with a depth value 221.Different video buffers are associated with different depth values.Depth value 221 represents a depth perspective for the viewer 100. Inone embodiment, the larger the depth value 221, the further away picture141 looks from the perspective of viewer 100.

In one embodiment, depth value 221 includes an integral or floatingpoint number. In another embodiment, depth value 221 includes a tag suchas “front”, “middle”, or “back”. In another embodiment, depth value 221is associated with the position of pictures in a data structure such asa stack. In yet another embodiment, depth value 221 is determined usinga graphics programming API such as OpenGL or DirectX.

In one embodiment, television 110 includes an overlay processor 250. Inone embodiment, overlay processor 250 includes a software library suchas OpenGL or DirectX. In one embodiment, overlay processor 250 includesan integrated circuit such as a Broadcom media processor, TI mediaprocessor, or integrated or discrete graphics processors from Intel, ATIor NVidia. In one embodiment, overlay processor 250 includes graphicsprogramming capabilities such as vector graphics, 2D graphics, 3Dgraphics.

In one embodiment, television script 190 includes programminginstructions which are processed by the programming processor 119. Theprogramming processor 119 then instructs the overlay processor 250 torender picture 141 using video buffer 211 and depth value 221.

Overlay processor 250 processes video buffer 211 by rendering thecontents of video buffer 211 onto picture 141 on display 113. Overlayprocessor 250 obtains depth value 221 and video buffer 211 fromtelevision script 190 and takes into consideration of depth value 221when rendering picture 141.

Television 110 includes a second video player 203, and a video buffer213. Television script 190 includes programming instructions for videoplayer 203 to process television video 133. Video player 203 processestelevision video 133. Video player 203 receives a stream of videosignals 233 of television video 133, processes video signals 233 andplaces the picture output into video buffer 213. Video buffer 213 isassociated with a depth value 223. Television script 190 includesprogramming instructions for overlay processor 250 to render picture 413using video buffer 213 and depth value 223. Overlay processor 250obtains depth value 223 and video buffer 213 from television script 190and takes into consideration of depth value 223 when rendering videobuffer 213 onto picture 143.

In one embodiment, depth value 223 is smaller than depth value 221,picture 143 overlaps with picture 141 in region 142. Picture 143 appearscloser to viewer 100 than picture 141. In one embodiment, depth value223 is “front” or “top”, indicating picture 143 appears closer to viewer100 than picture 141. When overlay processor 250 combines video buffers211 and 213 onto pictures 141 and 143, overlay processor 250 rendersvideo buffer 213 onto picture 143, including region 142. Overlayprocessor 250 renders video buffer 211 onto picture 141, excludingregion 142. Viewer 100 sees television video 133 on region 142 and nottelevision video 131 on region 142. Viewer 100 sees picture 143 overlayson to picture 141.

In one embodiment, television script 190 includes programminginstructions for graphics or overlaying effects. In one embodiment, thegraphics or overlaying effects includes shadow, translucence,refraction, or reflection. In one embodiment, the graphics or overlayingeffects includes 2D or 3D operations such as rotation, scaling,translation, animation or spinning. Overlay processor 250 obtains thegraphics or overlaying effects from television script 190 and appliesthe graphics or overlaying effects onto picture 141 or region 142. Inone embodiment, overlay processor 250 renders picture 143 with a 3Doperation such as rotation, translation, magnification, shrinking,texturing, or any 3-dimension animation operation. Picture 143 overlayswith picture 141 during the operation. In one embodiment, overlayprocessor 250 renders picture 143 with a 2D operation such as scaling,moving, blinking, flashing, rotation, spinning, or any 2-dimensionanimation operation. Picture 143 overlays with picture 141.

In one embodiment, television 110 includes a user interaction. In anembodiment, television script 190 includes programming instructions toallow viewer 100 to select picture 141 or picture 143. In oneembodiment, viewer 100 uses a remote controller 210 to select. In oneembodiment, picture 143 overlays over picture 141. Viewer 100 selectspicture 143 when the remote controller 210 points to region 142. In oneembodiment, picture 143 has a translucent effect, viewer 100 selectspicture 141 when remote controller 210 points to region 142. In oneembodiment, when picture 143 overlays over picture 141, picture 141becomes not selectable when remote controller 210 points to any place inpicture 141. In one embodiment, picture 143 partially overlays overpicture 141, and when remote controller 210 selects picture 141, picture141 now overlays over picture 143.

FIG. 3 illustrates television script 190 automatically changingoverlaying effects.

In one embodiment, television script 190 specifies depth values 221 and223.

In one embodiment, television video 131 includes a description 335,wherein television script 190 performs a video search based ondescription 335. In one embodiment, the search result includestelevision video 133. Television script 190 includes depth value 223 anddisplay region for display of the search results. In one embodiment,television 110 obtains description 335 when the viewer 100 selectspicture 141 with remote controller 210. In another embodiment,television 110 obtains description 335 when a timer expires. In yetanother embodiment, television 110 obtains description 335 in responseto a network event. In one example, television service provider 174sends a message to television 110 to trigger television 110 to obtaindescription 335.

In one embodiment, description 335 is encoded in Extensible MarkupLanguage (XML). In one embodiment, description 335 is encoded in a webscripting language such as Javascript or HTML. In one embodiment,description 335 is stored in television 110. In another embodiment,description 335 is retrieved over data network 330.

In one embodiment, description 335 includes information about televisionvideo 131, such as the name of the program, the cast, a summary of theplot, or user reviews. In one embodiment, description 335 includes atime stamp, such as the current time of day. In one embodiment,description 335 includes demographic information of viewer 100. In oneembodiment, description 335 includes information about servicessubscribed to by viewer 100.

In one embodiment, television video 131 includes an image 337 of anactor. In one example, television video 131 is a television show andimage 337 is an actor of the television show. Television script 190includes programming instructions to determine a person based on thefacial characteristics the image 337 (such as search in the Internet),as well as programming instructions to search for videos related to theperson. In one embodiment, description 335 describes the image 337. Inone embodiment, image 337 is a snapshot of television video 131. Inanother embodiment, image 337 is obtained separately through a networkbased on description 335. In another embodiment, image 337 is senttogether with television video 131, for example, as part of Media RSS orSMIL. In one embodiment, image 337 is displayed on picture 141. Inanother embodiment, image 337 is not displayed on picture 141.

In one embodiment, image 337 includes an object such as a car.Television script 190 includes programming instructions to determinecharacteristics of a car, and programming instructions to determine themake and model of a car (such as search in the Internet), as well asprogramming instructions to search videos related to the car. In asimilar embodiment, the object is merchandise such as a cell phone, apurse, a pair of boots, a diamond ring, or a dress. Television script190 includes programming instructions to determine characteristics ofthe merchandise, and programming instructions to determine a merchant,as well as programming instructions to search videos related to themerchandise or merchant.

FIG. 4 illustrates a process of changing the overlay by a secondtelevision script.

Television 110 may determine to obtain a second television script 192that contains different instructions for processing the overlay ofpictures 141 and 143. The second script may contain different depthvalues and/or placements for the pictures 141 and 143. There aredifferent reasons to obtain second television script 192. For example,television 110 decides to display a logo for television service provider174; to show an advertisement; to show an advertisement tailored forviewer 100; to show a pop-up animation; to show a highlight picture orvideo of a sport game; to display an actor profile; to display news,sports or stock updates; to alert viewer 100 of an event such asimportant news, an upcoming television show, or the next video; or toalert viewer 100 of an emergency.

In one embodiment, television script 190 includes instructions to obtainsecond television script 192.

In one embodiment, television script 190 determines television video 131requires a second television script 192, and instructs television 110 toobtain television script 192. In one example, television video 131 is asport television show, and television video 133 includes a replay of thelast touchdown. Television script 190 instructs television 110 to obtaintelevision script 192 which has the overlay instructions to processtelevision video 133 and television video 131. In one embodiment,television video 131 is a movie, and television video 133 includes achapter selection, wherein viewer 100 can select a chapter. Televisionscript 190 instructs television 110 to obtain television script 192which has instructions to play television video 133 corresponding to theselected chapter, to interact with viewer 100, and to overlay picture143 over picture 141.

In one embodiment, television script 192 replaces television script 190.Television 110 uses television script 192 to process pictures 141 and143. In one embodiment, after television 110 finishes processingtelevision script 192, television 110 resumes processing televisionscript 190. In one embodiment, video player 201 continues processingtelevision video 131 while television 110 switches from televisionscript 190 to television script 192. Viewer 100 does not see anyinterruption of television video 131 played on picture 141. In oneembodiment, video player 203 continues processing television video 133while television 110 switches from television script 190 to televisionscript 192. Viewer 100 does not see any interruption of television video133 played on picture 143.

In one embodiment, television 110 includes a timer 372. Television 110determines timer 372 expires, and obtains television script 192. In oneembodiment, pictures 141 and 143 are not interrupted when television 110replaces television script 190 by television script 192. In oneembodiment, television 110 subscribes to a television service 374 andautomatically obtains television script 192 from television serviceprovider 174.

In one embodiment, viewer 100 instructs television 110 to obtaintelevision script 192. In one embodiment, television 110 obtainstelevision script 192 based on video player 201. In one embodiment,television video 131 is television show of a football game. Video player201 determines television video 131 is at half time of the footballgame. Video player 201 informs television 110 to obtain televisionscript 192 with instructions to overlay television video 133 such ascommentator interviews over television video 131.

In one embodiment, television script 190 includes one or moreinstructions to place picture 141 onto a new position on display 113. Inone embodiment, television script 190 includes instructions to specify apath from the current position to the new position on display 113. Inone embodiment, the path is a 3-dimensional path wherein depth value 221changes while picture 141 is moved from the current position to the newposition. In one embodiment, television script 190 includes instructionsto specify an operation of picture 141. In one embodiment, the operationincludes scaling the size of picture 141. In one embodiment, theoperation includes rotating picture 141. In one embodiment, the rotationis based on 3-dimensional coordinates. In one embodiment, televisionscript 190 includes instructions to repeat the operation of picture 141.

The invention can take the form of an entirely hardware embodiment, anentirely software embodiment or an embodiment containing both hardwareand software elements. In a preferred embodiment, the invention isimplemented in software, which includes but is not limited to firmware,resident software, microcode, etc.

Furthermore, the invention can take the form of a computer programproduct accessible from a computer-usable or computer-readable mediumproviding program code for use by or in connection with a computer orany instruction execution system. For the purposes of this description,a computer-usable or computer readable medium can be any apparatus thatcan contain, store, communicate, propagate, or transport eh program foruse by or in connection with the instruction execution system,apparatus, or device.

The medium can be an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system (or apparatus or device) or apropagation medium. Examples of a computer-readable medium include asemiconductor or solid state memory, magnetic tape, a removable computerdiskette, a random access memory (RAM), a read-only memory (ROM), arigid magnetic disk and an optical disk. Current examples of opticaldisks include compact disk—read only memory (CD-ROM), compactdisk—read/write (CD-R/W) and DVD.

A data processing system suitable for storing and/or executing programcode will include at least one processor coupled directly or indirectlyto memory elements through a system bus. The memory elements can includelocal memory employed during actual execution of the program code, bulkstorage, and cache memories which provide temporary storage of at leastsome program code in order to reduce the number of times code must beretrieved from bulk storage during execution.

Input/output or I/O devices (including but no limited to keyboards,displays, point devices, etc.) can be coupled to the system eitherdirectly or through intervening I/O controllers.

Network adapters may also be coupled to the system to enable the dataprocessing system to become coupled to other data processing systems orremote printers or storage devices through intervening private or publicnetworks. Modems, cable modem and Ethernet cards are just a few of thecurrently available types of network adapters.

Although the present invention has been described in accordance with theembodiments shown, one of ordinary skill in the art will readilyrecognize that there could be variations to the embodiments and thosevariations would be within the spirit and scope of the presentinvention. Accordingly, many modifications may be made by one ofordinary skill in the art without departing from the spirit and scope ofthe appended claims.

What is claimed is:
 1. A television as a client device, comprising: aprocessor; and a non-transitory computer readable medium having computerreadable code for processing video signals, wherein when executed by theprocessor causes the television to: receive a plurality of video signalsdirectly from a plurality of video sources over Internet via a networkinterface module connected to a data network connecting to the Internet;receive a first software script over the network interface module fromthe data network connecting to the Internet, the first software scriptcomprising first web programming instructions, second web programminginstructions, and instructions to obtain a second software script;execute the first web programming instructions by the television,wherein in executing the first web programming instructions, thetelevision places a first picture from a first video signal of theplurality of video signals in a first position on a display coupled tothe television; execute the second web programming instructions by thetelevision, wherein in executing the second web programminginstructions, the television places a second picture from a second videosignal of the plurality of video signals in a second position at a firstdepth indication on the display, and displays the second pictureoverlaying on top of the first picture; execute the instructions, by thetelevision, to obtain the second software script; receive the secondsoftware script over the network interface module from the data networkconnecting to the Internet, the second software script comprising thirdweb programming instructions; and execute the third web programminginstructions, wherein in executing the third web programminginstructions, the television moves the first picture to a third positionat a second depth indication on the display as specified by the thirdweb programming instructions, wherein while the first picture is beingmoved, the first picture is displayed overlaying on top of the secondpicture based on the second depth indication.
 2. The system of claim 1,wherein the second software script comprises viewer information, whereinthe instructions to obtain the second software script is based on theviewer information.
 3. The system of claim 2, wherein the viewerinformation comprises at least one of viewer demographic information andviewer subscription information.
 4. The system of claim 1, wherein thefirst picture placed at the first position has a size, wherein inexecuting the third web programming instructions, the first picture isdisplayed with a different size.
 5. The system of claim 1, wherein thethird web programming instructions comprise an animation, wherein inexecuting the third web programming instructions, the first picture ismoved using the animation.
 6. The system of claim 5, wherein theanimation comprises one or more of the following: a rotation; a scaling;a translation; a spinning; transparency; and a three-dimensionalanimation effect.
 7. The system of claim 1, wherein the third webprogramming instructions comprise one or more of the following:Javascript; HTML; and Visual Basic.
 8. A method for displaying videos ona television as a client device, comprising: receiving a plurality ofvideo signals directly from a plurality of video sources over Internetby the television via a network interface module connected to a datanetwork connecting to the Internet; receiving a first software script bythe television over the network interface module from the data networkconnecting to the Internet, the first software script comprising firstweb programming instructions, second web programming instructions, andinstructions to obtain a second software script; executing the first webprogramming instructions by the television, wherein in executing thefirst web programming instructions, the television places a firstpicture from a first video signal of the plurality of video signals in afirst position on a display coupled to the television; executing thesecond web programming instructions by the television, wherein inexecuting the second web programming instructions, the television placesa second picture from a second video signal of the plurality of videosignals in a second position at a first depth indication, and displaythe second picture overlaying on top of the first picture; executing theinstructions, by the television, to obtain the second software script;receiving the second software script by the television using the networkinterface module from the data network connecting to the Internet, thesecond software script comprising third web programming instructions;and executing the third web programming instructions by the television,wherein in executing the third web programming instructions, thetelevision moves the first picture to a third position at a second depthindication on the display as specified by the third web programminginstructions, wherein while the first picture is being moved, the firstpicture is displayed overlaying on top of the second picture based onthe second depth indication.
 9. The method of claim 8, wherein thesecond software script comprises viewer information, wherein theinstructions to obtain the second software script is based on the viewerinformation.
 10. The method of claim 9, wherein the viewer informationcomprises at least one of viewer demographic information and viewersubscription information.
 11. The method of claim 8, wherein the firstpicture placed at the first position has a size, wherein in executingthe third web programming instructions, the first picture is displayedwith a different size.
 12. The method of claim 8, wherein the third webprogramming instructions comprise an animation, wherein in executing thethird web programming instructions, the first picture is moved using theanimation.
 13. The method of claim 12, wherein the animation comprisesone or more of the following: a rotation; a scaling; a translation; aspinning; transparency; and a three-dimensional animation effect. 14.The method of claim 8, wherein the third web programming instructionscomprise one or more of the following: Javascript; HTML; and VisualBasic.
 15. The method of claim 8, wherein the moving of the firstpicture to the third position is executed based on the third webprogramming instructions in response to a viewer selection of the firstpicture.
 16. A non-transitory computer readable medium having computerreadable code for processing video signals received by a television as aclient device, the computer readable code configured to: receive aplurality of video signals directly from a plurality of video sourcesover Internet by the television via a network interface module connectedto a data network connecting to the Internet; receive a first softwarescript by the television over the network interface module from the datanetwork connecting to the Internet, the first software script comprisingfirst web programming instructions, second web programming instructions,and instructions to obtain a second software script; execute the firstweb programming instructions by the television, wherein in executing thefirst web programming instructions, the television places a firstpicture from a first video signal of the plurality of video signals in afirst position on a display coupled to the television; execute thesecond web programming instructions by the television, wherein inexecuting the second web programming instructions, the television placesa second picture from a second video signal of the plurality of videosignals in a second position at a first depth indication, and displaythe second picture overlaying on top of the first picture; execute theinstructions, by the television, to obtain the second software script;receive the second software script by the television over the networkinterface module from the data network connecting to the Internet, thesecond software script comprising third web programming instructions;and execute the third web programming instructions by the television,wherein in executing the third web programming instructions, thetelevision moves the first picture to a third position at a second depthindication on the display as specified by the third web programminginstructions, wherein while the first picture is being moved, the firstpicture is displayed overlaying on top of the second picture based onthe second depth indication.
 17. The medium of claim 16, wherein thesecond software script comprises viewer information, wherein theinstructions to obtain the second software script is based on the viewerinformation.
 18. The medium of claim 17, wherein the viewer informationcomprises at least one of viewer demographic information and viewersubscription information.
 19. The medium of claim 16, wherein the firstpicture placed at the first position has a size, wherein in executingthe third web programming instructions, the first picture is displayedwith a different size.
 20. The medium of claim 16, wherein the third webprogramming instructions comprise an animation, wherein in executing thethird web programming instructions, the first picture is moved using theanimation.
 21. The medium of claim 20, wherein the animation comprisesone or more of the following: a rotation; a scaling; a translation; aspinning; transparency; and a three-dimensional animation effect. 22.The medium of claim 16, wherein the third web programming instructionscomprise one or more of the following: Javascript; HTML; and VisualBasic.